package com.css.crm.dao.impl;

import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.css.crm.dao.CustomerAttributeDao;
import com.css.crm.vo.CustomerAttributeVo;

/**
 * Implementation for CustomerAttributeDao
 * 
 * @author AIS
 */
public class CustomerAttributeDaoImpl extends BaseDaoImpl implements CustomerAttributeDao {

	/* (non-Javadoc)
	 * @see com.css.crm.dao.CustomerAttributeDao#getCustomerAttributeByCustId(java.lang.String)
	 */
	@Override
	public List<CustomerAttributeVo> getCustomerAttributeByCustId(String custId) {
		SqlSession session = getMyBatisSession();
		return session.selectList("customerAttribute.getCustomerAttributeByCustId", custId);
	}

	/* (non-Javadoc)
	 * @see com.css.crm.dao.CustomerAttributeDao#insertCustomerAttribute(com.css.crm.vo.CustomerAttributeVo)
	 */
	@Override
	public int insertCustomerAttribute(CustomerAttributeVo customerAttribute) {
		SqlSession session = getMyBatisSession();
		return session.insert("customerAttribute.insertCustomerAttribute", customerAttribute);
	}

	/* (non-Javadoc)
	 * @see com.css.crm.dao.CustomerAttributeDao#updateCustomerAttributeByPK(com.css.crm.vo.CustomerAttributeVo)
	 */
	@Override
	public int updateCustomerAttributeByPK(CustomerAttributeVo customerAttribute) {
		SqlSession session = getMyBatisSession();
		return session.update("customerAttribute.updateCustomerAttributeByPK", customerAttribute);
	}

	/* (non-Javadoc)
	 * @see com.css.crm.dao.CustomerAttributeDao#deleteCustomerAttributeByPK(java.lang.Long)
	 */
	@Override
	public int deleteCustomerAttributeByPK(Long customerAttrId) {
		SqlSession session = getMyBatisSession();
		return session.delete("customerAttribute.deleteCustomerAttributeByPK", customerAttrId);
	}

	/* (non-Javadoc)
	 * @see com.css.crm.dao.CustomerAttributeDao#deleteCustomerAttributeByCustId(java.lang.String)
	 */
	@Override
	public int deleteCustomerAttributeByCustId(String custId) {
		SqlSession session = getMyBatisSession();
		return session.delete("customerAttribute.deleteCustomerAttributeByCustId", custId);
	}
}
